﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using COFE.Core.Profile;
using COFE.Core;

namespace COFE.Core
{
    /// <summary>
    /// Return entries list for the current user.
    /// </summary>
    public interface IEntryListManager
    {
        /// <summary>
        /// List the names of the entries lists owned by current user.
        /// </summary>
        string[] EntryLists { get; }

        IEntryList this[string name] { get; }
                
        void RegisterEntryList(IEntryList entryList);

        void RemoveEntryList(string name);

        ICustomEntryList CreateCustomEntryList(string name);

        IAutoEntryList CreateAutoEntryList(string name, IDirectoryInfo rootDir, string filterString);

        IAutoEntryList CreateAutoEntryList(string name, string filterString);
    }
}
